/* 重置样式 */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  line-height: 1;
}
ul,
li {
  list-style: none;
}
body {
  font: 12px "宋体", "Arial Narrow", HELVETICA;
  background: #fff;
  -webkit-text-size-adjust: 100%;
  touch-action: none;
  line-height: 1;
}
.bold {
  font-weight: bold;
}
a {
  color: #172c45;
  text-decoration: none;
}
a:hover {
  color: #cd0200;
  text-decoration: underline;
}
img {
  display: block;
}
/* 公共样式 */
/* 文本居中 */
.tac {
  text-align: center;
}
/* 相对定位 */
.rel {
  position: relative;
}
/* 绝对定位 */
.abs {
  position: absolute;
}
/* 固定定位 */
.fixed {
  position: fixed;
}
/* 隐藏 */
.dsn {
  display: none;
}
/* 宽度100% */
.w100p {
  width: 100%;
}
.h100p {
  height: 100%;
}
/* 颜色 */
.fff {
  color: #fff;
}
.bg-fff {
  background-color: #fff;
}
/* 主题色 */
.base {
  color: #f03d37;
}
.bg-base {
  background-color: #f03d37;
}
/* 字体 */
.f10 {
  font-size: 10px;
}
.f12 {
  font-size: 12px;
}
.f14 {
  font-size: 14px;
}
.f16 {
  font-size: 16px;
}
.f18 {
  font-size: 18px;
}
.f20 {
  font-size: 20px;
}
.f22 {
  font-size: 22px;
}
.f24 {
  font-size: 24px;
}
.f26 {
  font-size: 26px;
}
.f28 {
  font-size: 28px;
}
.f30 {
  font-size: 30px;
}
.f32 {
  font-size: 32px;
}
.f34 {
  font-size: 34px;
}
.f36 {
  font-size: 36px;
}
/* 弹性盒子 */
.flex {
  display: flex;
}
.jc-c {
  justify-content: center;
}
.jc-sb {
  justify-content: space-between;
}
.jc-sa {
  justify-content: space-around;
}
.aic {
  align-items: center;
}
.fcc {
  display: flex;
  justify-content: center;
  align-items: center;
}
/* 盒子排成一列 */
.fdc {
  flex-direction: column;
}
/* 剩余空间分配 */
.fg1 {
  flex-grow: 1;
}
.fww {
  flex-wrap: wrap;
}
/* margin */
.mt-5 {
  margin-top: 5px;
}
.mt-10 {
  margin-top: 10px;
}
.mt-15 {
  margin-top: 15px;
}
.mt-20 {
  margin-top: 20px;
}
.mt-25 {
  margin-top: 25px;
}
.mt-30 {
  margin-top: 30px;
}
.ml-5 {
  margin-left: 5px;
}
.ml-10 {
  margin-left: 10px;
}
.ml-15 {
  margin-left: 15px;
}
.ml-20 {
  margin-left: 20px;
}
.ml-25 {
  margin-left: 25px;
}
.ml-30 {
  margin-left: 30px;
}
.mr-5 {
  margin-right: 5px;
}
.mr-10 {
  margin-right: 10px;
}
.mr-15 {
  margin-right: 15px;
}
.mr-20 {
  margin-right: 20px;
}
.mr-25 {
  margin-right: 25px;
}
.mr-30 {
  margin-right: 30px;
}
.mb-5 {
  margin-bottom: 5px;
}
.mb-10 {
  margin-bottom: 10px;
}
.mb-15 {
  margin-bottom: 15px;
}
.mb-20 {
  margin-bottom: 20px;
}
.mb-25 {
  margin-bottom: 25px;
}
.mb-30 {
  margin-bottom: 30px;
}
/* padding */
.pt-5 {
  padding-top: 5px;
}
.pt-10 {
  padding-top: 10px;
}
.pt-15 {
  padding-top: 15px;
}
.pt-20 {
  padding-top: 20px;
}
.pt-25 {
  padding-top: 25px;
}
.pt-30 {
  padding-top: 30px;
}
.pl-5 {
  padding-left: 5px;
}
.pl-10 {
  padding-left: 10px;
}
.pl-15 {
  padding-left: 15px;
}
.pl-20 {
  padding-left: 20px;
}
.pl-25 {
  padding-left: 25px;
}
.pl-30 {
  padding-left: 30px;
}
.pr-5 {
  padding-right: 5px;
}
.pr-10 {
  padding-right: 10px;
}
.pr-15 {
  padding-right: 15px;
}
.pr-20 {
  padding-right: 20px;
}
.pr-25 {
  padding-right: 25px;
}
.pr-30 {
  padding-right: 30px;
}
.pb-5 {
  padding-bottom: 5px;
}
.pb-10 {
  padding-bottom: 10px;
}
.pb-15 {
  padding-bottom: 15px;
}
.pb-20 {
  padding-bottom: 20px;
}
.pb-25 {
  padding-bottom: 25px;
}
.pb-30 {
  padding-bottom: 30px;
}
header {
  z-index: 3;
  position: fixed;
  top: 0;
  width: 100%;
  height: 50px;
  display: flex;
  align-items: center;
  border-bottom: 1px solid #f4f4f4;
  background-color: #fff;
}
header span {
  display: flex;
  align-items: center;
}
header .active {
  color: red;
  border-bottom: 2px solid red;
}
header .h100p {
  height: 80%;
}
.aside {
  position: fixed;
  left: 0;
  top: 50px;
  width: 35vw;
  background: #f4f4f4;
  height: calc(100vh - 50px);
  flex-wrap: wrap;
  align-content: flex-start;
  justify-content: space-evenly;
  display: flex;
  overflow: auto;
}
.aside .active {
  background-color: #cd0200;
  color: #fff;
}
.aside dd {
  padding: 5px;
  width: 40%;
  flex-grow: 1;
  display: inline-flex;
  flex-wrap: wrap;
  display: flex;
  justify-content: center;
  align-items: center;
  justify-content: space-evenly;
}
.aside dd span {
  background-color: #fff;
  width: 100%;
  height: 30px;
  display: flex;
  justify-content: center;
  align-items: center;
}
.aside dd.fix {
  height: 0;
  margin-top: 0;
  margin-bottom: 0;
  border: none;
}
main {
  padding-left: 35%;
  margin-top: 50px;
}
main ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-evenly;
}
main ul li {
  height: 40px;
  width: 40px;
  border-radius: 50%;
  background-color: #fff;
  border: 1px solid #999;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  margin: 5px;
}
main ul li.fix {
  height: 0;
  margin-top: 0;
  margin-bottom: 0;
  border: none;
}
main ul .active {
  background-color: #cd0200;
  color: #fff;
}
.doing {
  background: linear-gradient(to right, #fff, red);
}
